# -*- coding: utf-8 -*-
from structures.hashtable import HashTable


class Graph():

    NAME_SEPARATOR = '->'
    ADJ_LIST_SEPARATOR = '||'
    WEIGHT_SEPARATOR = ';'

    def __init__(self):
        pass

    def load(self, filename):
        pass

    def save(self, filename):
        raise Exception('save() not implemented.')

    def show(self):
        print self.to_string()

    def add_vertex(self, name):
        pass

    def add_edge(self, source, destination, weight):
        pass

    def vertex_count(self):
        pass

    def edge_count(self):
        pass

    def run_kruskal(self):
        pass

    def run_prim(self):
        pass

    def run_dijkstra(self, source, destination):
        pass
